﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;

namespace Ocean.His.MedicalInsurance
{
    /// <summary>
    /// 3402
    /// 科室信息变更
    /// </summary>
    [DataContract]
    public class SI3402Data
    {
        /// <summary>
        /// 医院科室编码
        /// 参数类型：字符型
        /// 参数长度：20
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "hosp_dept_codg")]
        public string HospDeptCodg { get; set; }

        /// <summary>
        /// 医院科室名称
        /// 参数类型：字符型
        /// 参数长度：100
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "hosp_dept_name")]
        public string HospDeptName { get; set; }

        /// <summary>
        /// 开始时间
        /// 参数类型：日期时间型
        /// 参数长度：
        /// 代码标识：
        /// 是否必填：Y
        /// yyyy-MM-dd
        /// </summary>
        [DataMember(Name = "begntime")]
        public string Begntime { get; set; }

        /// <summary>
        /// 结束时间
        /// 参数类型：日期时间型
        /// 参数长度：
        /// 代码标识：
        /// 是否必填：
        /// yyyy-MM-dd
        /// </summary>
        [DataMember(Name = "endtime")]
        public string Endtime { get; set; }

        /// <summary>
        /// 简介
        /// 参数类型：字符型
        /// 参数长度：500
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "itro")]
        public string Itro { get; set; }

        /// <summary>
        /// 科室负责人姓名
        /// 参数类型：字符型
        /// 参数长度：50
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "dept_resper_name")]
        public string DeptResperName { get; set; }

        /// <summary>
        /// 科室负责人电话
        /// 参数类型：字符型
        /// 参数长度：50
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "dept_resper_tel")]
        public string DeptResperTel { get; set; }

        /// <summary>
        /// 科室医疗服务范围
        /// 参数类型：字符型
        /// 参数长度：500
        /// 代码标识：
        /// 是否必填：
        /// 
        /// </summary>
        [DataMember(Name = "dept_med_serv_scp")]
        public string DeptMedServScp { get; set; }

        /// <summary>
        /// 科别
        /// 参数类型：字符型
        /// 参数长度：6
        /// 代码标识：Y
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "caty")]
        public string Caty { get; set; }

        /// <summary>
        /// 科室成立日期
        /// 参数类型：日期时间型
        /// 参数长度：
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "dept_estbdat")]
        public string DeptEstbdat { get; set; }

        /// <summary>
        /// 批准床位数量
        /// 参数类型：数值型
        /// 参数长度：11
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "aprv_bed_cnt")]
        public decimal AprvBedCnt { get; set; }

        /// <summary>
        /// 医保认可床位数
        /// 参数类型：数值型
        /// 参数长度：11
        /// 代码标识：
        /// 是否必填：
        /// 
        /// </summary>
        [DataMember(Name = "hi_crtf_bed_cnt")]
        public decimal HiCrtfBedCnt { get; set; }

        /// <summary>
        /// 统筹区编号
        /// 参数类型：字符型
        /// 参数长度：6
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "poolarea_no")]
        public string PoolareaNo { get; set; }

        /// <summary>
        /// 医师人数
        /// 参数类型：数值型
        /// 参数长度：5
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "dr_psncnt")]
        public decimal DrPsncnt { get; set; }

        /// <summary>
        /// 药师人数
        /// 参数类型：数值型
        /// 参数长度：5
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "phar_psncnt")]
        public decimal PharPsncnt { get; set; }

        /// <summary>
        /// 护士人数
        /// 参数类型：数值型
        /// 参数长度：5
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "nurs_psncnt")]
        public decimal NursPsncnt { get; set; }

        /// <summary>
        /// 技师人数
        /// 参数类型：数值型
        /// 参数长度：5
        /// 代码标识：
        /// 是否必填：Y
        /// 
        /// </summary>
        [DataMember(Name = "tecn_psncnt")]
        public decimal TecnPsncnt { get; set; }

        /// <summary>
        /// 备注
        /// 参数类型：字符型
        /// 参数长度：500
        /// 代码标识：
        /// 是否必填：
        /// 
        /// </summary>
        [DataMember(Name = "memo")]
        public string Memo { get; set; }

    }

    /// <summary>
    /// 
    /// </summary>
    [DataContract]
    public class SI3402InputModel
    {
        [DataMember(Name = "deptinfo")]
        public SI3402Data Si3402Data { get; set; }
    }

    /// <summary>
    /// 3402
    /// 科室信息变更
    /// </summary>
    [DataContract]
    public class SI3402RequestModel : SIBaseRequestModel
    {
        /// <summary>
        /// 交易输入
        /// </summary>
        [DataMember(Name = "input")]
        public SI3402InputModel Input { get; set; }

        public SI3402RequestModel(MedicalInsuranceOption config, SI3402Data si3402Data) : base(config)
        {
            Infno = "3402";
            Input = new SI3402InputModel();
            Input.Si3402Data = si3402Data;
        }
    }
}
